package com.delivery.www.dao;

import com.delivery.www.po.Store;

import java.util.List;

/**
 * @author 12970
 */
public interface StoreDao {
    /**
     * 创建店铺
     *
     * @param storeName         店铺名
     * @param userId            用户id
     * @param dishNum           菜品数
     * @param commentNum        评论数
     * @param introduce         简介
     * @param processOrderNum   完成订单数
     * @param unprocessOrderNum 未完成订单数
     * @param turnover          营业额
     * @param status            状态（是否审核通过）
     * @return 改变行数
     */
    int createStore(String storeName, int userId, int dishNum, int commentNum, String introduce, int processOrderNum, int unprocessOrderNum, Float turnover, int status);

    /**
     * 商家获取店铺信息
     *
     * @param userId 用户id
     * @return 店铺
     */
    Store getOwnStore(int userId);

    /**
     * 查看所有店铺
     * @param storeName 店铺名
     * @param currentPageNo 当前页码
     * @param pageSize 页面大小
     * @return 所有通过审核店铺
     */
    List<Store> getAllStore(String storeName,int currentPageNo, int pageSize);

    /**
     * 修改店铺信息
     *
     * @param storeId 店铺id
     * @param value   新名字
     * @return 改变
     */
    int updateStoreName(int storeId, String value);

    /**
     * 修改简介
     *
     * @param storeId 店铺id
     * @param value   新简介
     * @return 改变
     */
    int updateStoreIntroduce(int storeId, String value);

    /**
     * 获取待审核的店铺
     *
     * @return 店铺列表
     */
    List<Store> getAuditStore();

    /**
     * 获取店铺
     *
     * @return 店铺列表
     */
    List<Store> getStore();

    /**
     * 审核店铺
     *
     * @param storeId 店铺id
     * @param status 修改状态
     * @return 店铺列表
     */
    int modifyStatus(int storeId,int status);

    /**
     * 获取店铺数量
     *
     * @param storeName 店铺名
     * @return 店铺数量
     */
    int getStoreCount(String storeName);
}
